package com.imooc.coupon.converter;

import com.imooc.coupon.constant.CouponCategory;

import javax.persistence.AttributeConverter;
import javax.persistence.Converter;

/**
 * @description: 优惠券分类枚举转换器
 * @author：naxiaozi，微信：naxiaozi
 * @date: 2025/8/13
 * @Copyright：
 * @Converter 定义为转换器
 * X 实体类
 * Y 数据库字段类型
 *
 */
@Converter
public class CouponCategoryConverter implements AttributeConverter<CouponCategory,String> {
    //将x转换为y,数据库字段(写入和更新操作)
    @Override
    public String convertToDatabaseColumn(CouponCategory couponCategory) {
        return couponCategory.getCode();
    }
    //将Y转换为实体类X（查询操作）
    @Override
    public CouponCategory convertToEntityAttribute(String code) {
        return CouponCategory.of(code);
    }
}
